# Copyright (c) 2018 Presto Labs Pte. Ltd.
# Author: inkyu, jaewon

import os
from coin.exchange.okex_futures.kr_rest.futures_product import OkexFuturesProduct
from coin.exchange.huobi_futures.kr_rest.futures_product import HuobiFuturesProduct

STRATEGIES = [
    {
        'name': 'pass-unhedge.bitmex-ethusd.15m11',
        'group': 'pass-unhedge.bitmex-ethusd',
        'log_path': ('~/data/log/'
                     'strategy-12.eu-west-1/log_pass_unhedge_ethusd_2'),
        'topics': ['strategy-12.eu-west-1_log.log_pass_unhedge_ethusd_2'],
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'ETH-USD.PERPETUAL.Bitmex.ETHUSD',
        'quote': 'BTC2',
        'owner': 'jaewon',
    },
    {
        'name': 'pass-unhedge.bitmex-ethusd.02m11',
        'group': 'pass-unhedge.bitmex-ethusd',
        'log_path': ('~/data/log/'
                     'strategy-12.eu-west-1/log_pass_unhedge_ethusd_3'),
        'topics': ['strategy-12.eu-west-1_log.log_pass_unhedge_ethusd_3'],
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'ETH-USD.PERPETUAL.Bitmex.ETHUSD',
        'quote': 'BTC2',
        'owner': 'jaewon',
    },
    {
        'name': 'pass-unhedge.bitmex-ethusd.05m11',
        'group': 'pass-unhedge.bitmex-ethusd',
        'log_path': ('~/data/log/'
                     'strategy-13.eu-west-1/log_pass_unhedge_ethusd_2'),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'ETH-USD.PERPETUAL.Bitmex.ETHUSD',
        'quote': 'BTC2',
        'owner': 'jaewon',
    },
    {
        'name': 'pass-unhedge.bitmex-ethusd.05m13',
        'group': 'pass-unhedge.bitmex-ethusd',
        'log_path': ('~/data/log/'
                     'strategy-13.eu-west-1/log_pass_unhedge_ethusd_3'),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'ETH-USD.PERPETUAL.Bitmex.ETHUSD',
        'quote': 'BTC2',
        'owner': 'jaewon',
    },
    {
        'name': 'pass-unhedge.bitmex-ethusd.30m15',
        'group': 'pass-unhedge.bitmex-ethusd',
        'log_path': ('~/data/log/'
                     'strategy-14.eu-west-1/log_pass_unhedge_ethusd_2'),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'ETH-USD.PERPETUAL.Bitmex.ETHUSD',
        'quote': 'BTC2',
        'owner': 'jaewon',
    },
    {
        'name': 'pass-unhedge.bitmex-ethusd.30m17',
        'group': 'pass-unhedge.bitmex-ethusd',
        'log_path': ('~/data/log/'
                     'strategy-14.eu-west-1/log_pass_unhedge_ethusd_3'),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'ETH-USD.PERPETUAL.Bitmex.ETHUSD',
        'quote': 'BTC2',
        'owner': 'jaewon',
    },
    {
        'name': '1.pass-unhedge.bitflyer-fxbtcjpy.japan2',
        'group': 'pass-unhedge.bitflyer-fxbtcjpy',
        'log_path': ('~/data/log/'
                     'strategy-01.ap-northeast-1/log_pass_unhedge_bitflyer_7'),
        'fill_collector': 'fill_collector',
        'balance_marker': 'Total',
        'position_marker': 'BTC-JPY.PERPETUAL.Bitflyer.FX_BTC_JPY',
        'quote': 'JPY',
        'owner': 'jaewon',
    },
    {
        'name': 'RETIRED - 2.pass-unhedge.bitflyer-fxbtcjpy.prestoinv0',
        'group': 'pass-unhedge.bitflyer-fxbtcjpy',
        'log_path': ('~/data/log/'
                     'strategy-02.ap-northeast-1/log_pass_unhedge_bitflyer_9'),
        'fill_collector': 'fill_collector',
        'balance_marker': 'Total',
        'position_marker': 'BTC-JPY.PERPETUAL.Bitflyer.FX_BTC_JPY',
        'quote': 'JPY',
        'owner': 'jaewon',
    },
    {
        'name': '2.pass-unhedge.bitflyer-fxbtcjpy.japan1',
        'group': 'pass-unhedge.bitflyer-fxbtcjpy',
        'log_path': ('~/data/log/'
                     'strategy-02.ap-northeast-1/log_pass_unhedge_bitflyer_10'),
        'fill_collector': 'fill_collector',
        'balance_marker': 'Total',
        'position_marker': 'BTC-JPY.PERPETUAL.Bitflyer.FX_BTC_JPY',
        'quote': 'JPY',
        'owner': 'jaewon',
    },
    #{
    #  'name': 'huobi_happy_1',
    #  'group': 'huobi_happy',
    #  'log_path': ('~/data/log/strategy-09.ap-northeast-1.huobi/'
    #               'log_huobi_binance_btc_mm_dumb_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'ETH',
    #  'quote': 'BTC3',
    #  'spot_mode': True,
    #  'owner': 'zelinchen',
    #},
    #{
    #  'name': 'huobi_happy_2',
    #  'group': 'huobi_happy',
    #  'log_path': ('~/data/log/strategy-09.ap-northeast-1.huobi/'
    #               'log_huobi_binance_usdt_mm_dumb_2'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'XRP',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'zelinchen',
    #},
    #{
    #  'name': 'huobi_happy_3',
    #  'group': 'huobi_happy',
    #  'log_path': ('~/data/log/strategy-09.ap-northeast-1.huobi/'
    #               'log_huobi_okex_futures_usdt_mm_dumb_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'XRP',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'zelinchen',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_binance_btc_1',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_binance_btc_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'ETH',
    #  'quote': 'BTC3',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_binance_btc_2',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_binance_btc_2'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'LTC',
    #  'quote': 'BTC3',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_binance_btc',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_binance_btc'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'EOS',
    #  'quote': 'BTC3',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_usdt_1',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_usdt_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'BTC',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_usdt_2',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_usdt_2'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'EOS',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_usdt_3',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_usdt_3'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'ETH',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_usdt_1_b',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_usdt_1_b'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'BTC',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_usdt_2_b',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_usdt_2_b'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'EOS',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_usdt_3_b',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_usdt_3_b'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'ETH',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_btc_1',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_btc_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'ETH',
    #  'quote': 'BTC3',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_btc_2',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_btc_2'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'EOS',
    #  'quote': 'BTC3',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_btc_3',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_btc_3'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'LTC',
    #  'quote': 'BTC3',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_usdt_4',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_usdt_4'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'TRX',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_usdt_5',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_usdt_5'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'XRP',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_binance_usdt_6',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_binance_usdt_6'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'ETC',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_okex_futures_usdt_2',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_okex_futures_usdt_2'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'EOS',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'RETIRED.unhedged_mm_huobi_okex_futures_usdt_3',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_okex_futures_usdt_3'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'LTC',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_minor_usdt_1',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_minor_usdt_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'ADA',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_index_usdt',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_index_usdt'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'EOS',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_minor_coin_usdt',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_minor_coin_usdt'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'BCHABC',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_index_usdt',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_index_usdt'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'Total',
    #  'position_marker': 'BTC',
    #  'quote': 'USDT2',
    #  'spot_mode': True,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_futures_btc_this_week',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_futures_this_week_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalBTC',
    #  'position_marker': HuobiFuturesProduct.FromStr('BTC-USD.THIS_WEEK'),
    #  'quote': 'BTC4',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_futures_eos_this_week',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_futures_this_week_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalEOS',
    #  'position_marker': HuobiFuturesProduct.FromStr('EOS-USD.THIS_WEEK'),
    #  'quote': 'EOS2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_futures_eth_this_week',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_futures_this_week_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalETH',
    #  'position_marker': HuobiFuturesProduct.FromStr('ETH-USD.THIS_WEEK'),
    #  'quote': 'ETH2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_futures_ltc_this_week',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_futures_this_week_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalLTC',
    #  'position_marker': HuobiFuturesProduct.FromStr('LTC-USD.THIS_WEEK'),
    #  'quote': 'LTC2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_futures_btc_quarter',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_futures_this_quarter_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalBTC',
    #  'position_marker': HuobiFuturesProduct.FromStr('BTC-USD.QUARTER'),
    #  'quote': 'BTC4',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_futures_eos_quarter',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_futures_this_quarter_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalEOS',
    #  'position_marker': HuobiFuturesProduct.FromStr('EOS-USD.QUARTER'),
    #  'quote': 'EOS2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_futures_eth_quarter',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_futures_this_quarter_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalETH',
    #  'position_marker': HuobiFuturesProduct.FromStr('ETH-USD.QUARTER'),
    #  'quote': 'ETH2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_huobi_futures_ltc_quarter',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_huobi_futures_this_quarter_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalLTC',
    #  'position_marker': HuobiFuturesProduct.FromStr('LTC-USD.QUARTER'),
    #  'quote': 'LTC2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_eos_this_week_1',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_week_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalEOS',
    #  'position_marker': OkexFuturesProduct.FromStr('EOS-USD.THIS_WEEK'),
    #  'quote': 'EOS2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_eth_this_week_1',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_week_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalETH',
    #  'position_marker': OkexFuturesProduct.FromStr('ETH-USD.THIS_WEEK'),
    #  'quote': 'ETH2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_ltc_this_week_1',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_week_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalLTC',
    #  'position_marker': OkexFuturesProduct.FromStr('LTC-USD.THIS_WEEK'),
    #  'quote': 'LTC2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_btc_quarter_1_a',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_quarter_1_a'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalBTC',
    #  'position_marker': OkexFuturesProduct.FromStr('BTC-USD.QUARTER'),
    #  'quote': 'BTC4',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_eos_quarter_1_a',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_quarter_1_a'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalEOS',
    #  'position_marker': OkexFuturesProduct.FromStr('EOS-USD.QUARTER'),
    #  'quote': 'EOS2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_eth_quarter_1_a',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_quarter_1_a'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalETH',
    #  'position_marker': OkexFuturesProduct.FromStr('ETH-USD.QUARTER'),
    #  'quote': 'ETH2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_ltc_quarter_1',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_quarter_1_a'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalLTC',
    #  'position_marker': OkexFuturesProduct.FromStr('LTC-USD.QUARTER'),
    #  'quote': 'LTC2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_btc_quarter_1_b',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_quarter_1_b'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalBTC',
    #  'position_marker': OkexFuturesProduct.FromStr('BTC-USD.QUARTER'),
    #  'quote': 'BTC4',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_eos_quarter_1_b',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_quarter_1_b'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalEOS',
    #  'position_marker': OkexFuturesProduct.FromStr('EOS-USD.QUARTER'),
    #  'quote': 'EOS2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_eth_quarter_1_b',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_quarter_1_b'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalETH',
    #  'position_marker': OkexFuturesProduct.FromStr('ETH-USD.QUARTER'),
    #  'quote': 'ETH2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_btc_this_week_2',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_week_2'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalBTC',
    #  'position_marker': OkexFuturesProduct.FromStr('BTC-USD.THIS_WEEK'),
    #  'quote': 'BTC4',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_eth_this_week_2',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_week_2'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalETH',
    #  'position_marker': OkexFuturesProduct.FromStr('ETH-USD.THIS_WEEK'),
    #  'quote': 'ETH2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_btc_quarter_2',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_quarter_2'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalBTC',
    #  'position_marker': OkexFuturesProduct.FromStr('BTC-USD.QUARTER'),
    #  'quote': 'BTC4',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_futures_eth_quarter_2',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-14.aliyun-cn-hongkong/'
    #               'log_unhedged_mm_okex_futures_this_quarter_2'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalETH',
    #  'position_marker': OkexFuturesProduct.FromStr('ETH-USD.QUARTER'),
    #  'quote': 'ETH2',
    #  'spot_mode': False,
    #  'owner': 'chensili',
    #},
    #{
    #  'name': 'unhedged_mm_okex_btc_swap_happy',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-09.ap-northeast-1.huobi/'
    #               'log_okex_swap_usd_mm_dumb_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalBTC',
    #  'position_marker': OkexFuturesProduct.FromStr('BTC-USD.PERPETUAL'),
    #  'quote': 'BTC4',
    #  'spot_mode': False,
    #  'owner': 'zelinchen',
    #},
    #{
    #  'name': 'unhedged_mm_okex_eos_swap_happy',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-09.ap-northeast-1.huobi/'
    #               'log_okex_swap_usd_mm_dumb_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalEOS',
    #  'position_marker': OkexFuturesProduct.FromStr('EOS-USD.PERPETUAL'),
    #  'quote': 'EOS2',
    #  'spot_mode': False,
    #  'owner': 'zelinchen',
    #},
    #{
    #  'name': 'unhedged_mm_okex_eth_swap_happy',
    #  'group': 'unhedged_mm',
    #  'log_path': ('~/data/log/strategy-09.ap-northeast-1.huobi/'
    #               'log_okex_swap_usd_mm_dumb_1'),
    #  'fill_collector': 'csv',
    #  'balance_marker': 'TotalETH',
    #  'position_marker': OkexFuturesProduct.FromStr('ETH-USD.PERPETUAL'),
    #  'quote': 'ETH2',
    #  'spot_mode': False,
    #  'owner': 'zelinchen',
    #},
    {
        'name': 'basis_unhedged_okex_weekly_huobi_spot',
        'group': 'basis_unhedged',
        'log_path': (
            '~/data/log/strategy-14.ap-northeast-1.huobi/log_basis_unhedged_okex_weekly_huobi_spot/okex_huobi_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'EOS',
        'quote': 'USDT3',
        'spot_mode': True,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_unhedged_okex_futures_to_huobi_futures',
        'group': 'basis_unhedged',
        'log_path': (
            '~/data/log/strategy-12.ap-northeast-1.huobi/log_basis_unhedged_okex_quarter_huobi_quarter/okex_huobi_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'TotalEOS',
        'position_marker': HuobiFuturesProduct.FromStr('EOS-USD.QUARTER'),
        'quote': 'EOS3',
        'spot_mode': False,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_unhedged_okex_futures_to_huobi_futures',
        'group': 'basis_unhedged',
        'log_path': (
            '~/data/log/strategy-12.ap-northeast-1.huobi/log_basis_unhedged_okex_quarter_huobi_quarter/okex_huobi_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'TotalETH',
        'position_marker': HuobiFuturesProduct.FromStr('ETH-USD.QUARTER'),
        'quote': 'ETH3',
        'spot_mode': False,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_unhedged_okex_futures_to_huobi_futures',
        'group': 'basis_unhedged',
        'log_path': (
            '~/data/log/strategy-12.ap-northeast-1.huobi/log_basis_unhedged_okex_quarter_huobi_quarter/okex_huobi_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'TotalLTC',
        'position_marker': HuobiFuturesProduct.FromStr('LTC-USD.QUARTER'),
        'quote': 'LTC3',
        'spot_mode': False,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_unhedged_okex_futures_to_huobi_futures',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-12.ap-northeast-1.huobi/log_basis_smm_okex_huobi/okex_huobi_basis_smm'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'TotalBCHABC',
        'position_marker': HuobiFuturesProduct.FromStr('BCHABC-USD.QUARTER'),
        'quote': 'BCHABC2',
        'spot_mode': False,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_smm_okex_futures_to_huobi_futures',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-14.ap-northeast-1.huobi/log_basis_smm_okex_quarter_huobi_quarter/okex_huobi_basis_smm'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'TotalBCHABC',
        'position_marker': HuobiFuturesProduct.FromStr('BCHABC-USD.QUARTER'),
        'quote': 'BCHABC2',
        'spot_mode': False,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_smm_okex_futures_to_huobi_futures',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-14.ap-northeast-1.huobi/log_basis_smm_okex_quarter_huobi_quarter/okex_huobi_basis_smm'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'TotalETH',
        'position_marker': HuobiFuturesProduct.FromStr('ETH-USD.QUARTER'),
        'quote': 'ETH3',
        'spot_mode': False,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_smm_okex_futures_to_huobi_futures',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-14.ap-northeast-1.huobi/log_basis_smm_okex_quarter_huobi_quarter/okex_huobi_basis_smm'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'TotalEOS',
        'position_marker': HuobiFuturesProduct.FromStr('EOS-USD.QUARTER'),
        'quote': 'EOS3',
        'spot_mode': False,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_smm_okex_futures_to_huobi_futures',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-14.ap-northeast-1.huobi/log_basis_smm_okex_quarter_huobi_quarter/okex_huobi_basis_smm'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'TotalLTC',
        'position_marker': HuobiFuturesProduct.FromStr('LTC-USD.QUARTER'),
        'quote': 'LTC3',
        'spot_mode': False,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_smm_okex_quarter_bithumb_spot',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-24.ap-northeast-2/log_basis_unhedged_okex_weekly_bithumb_spot/bithumb_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'EOS',
        'quote': 'KRW2',
        'spot_mode': True,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_smm_okex_weekly_bithumb_spot',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-25.ap-northeast-2/log_basis_smm_okex_weekly_bithumb_spot/bithumb_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'EOS',
        'quote': 'KRW2',
        'spot_mode': True,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_smm_okex_weekly_upbit_spot',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-11.ap-northeast-2/log_basis_smm_okex_weekly_upbit_spot/upbit_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'EOS',
        'quote': 'KRW2',
        'spot_mode': True,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_smm_okex_quarter_upbit_spot',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-26.ap-northeast-2/log_basis_smm_okex_spot_upbit_spot/upbit_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'BCHABC',
        'quote': 'KRW2',
        'spot_mode': True,
        'owner': 'yuxuan',
    },
    {
        'name': 'basis_smm_okex_weekly_kraken_spot',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-02.eu-central-1/log_basis_smm_okex_weekly_kraken_spot/kraken_basis_smm'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'ETH',
        'quote': 'USD',
        'spot_mode': True,
        'owner': 'yuxuan',
    },
    {
        'name': 'bitstamp_gdax_usd_mm_dumb_1',
        'group': 'unhedged_mm',
        'log_path': ('~/data/log/strategy-05.eu-central-1/'
                     'log_bitstamp_gdax_usd_mm_dumb_1'),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'BTC',
        'quote': 'USD',
        'spot_mode': True,
        'owner': 'zelinchen',
    },
    {
        'name': 'RETIRED.basis_smm_binance_korbit_spot',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-03.us-east-1/log_basis_smm_binance_korbit_spot/korbit_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'ETH',
        'quote': 'KRW2',
        'spot_mode': True,
        'owner': 'xguo',
    },
    {
        'name': 'basis_smm_binance_bitstamp_spot',
        'group': 'basis_smm',
        'log_path': (
            '~/data/log/strategy-06.eu-central-1/log_basis_smm_binance_bitstamp_spot/bitstamp_basis_unhedged'
        ),
        'fill_collector': 'csv',
        'balance_marker': 'Total',
        'position_marker': 'ETH',
        'quote': 'USD',
        'spot_mode': True,
        'owner': 'xguo',
    },
]

for elem in STRATEGIES:
  if isinstance(elem, dict):
    elem['log_path'] = os.path.expanduser(elem['log_path'])
